package org.db.dao;

public class LageskizzenGVPDAO extends DAO
		implements
			Comparable<LageskizzenGVPDAO> {

	private String punktNrGVPLinks;

	private double stationGVPLinks;

	private String punktNrGVPRechts;

	private double stationGVPRechts;

	private double querGVPLinks;

	private double querGleisLinks;

	private double querGleisRechts;

	private int hoehenmaßGVPLinks;

	private int hoehenmaßGVPRechts;

	private double gleisabstand;

	public LageskizzenGVPDAO(String punktNrGVPLinks, double stationGVPLinks,
			int hoehenmaßGVPLinks, double querGVPLinks,
			String punktNrGVPRechts, double stationGVPRechts,
			int hoehenmaßGVPRechts, double querGleisLinks,
			double querGleisRechts, double gleisabstand) {
		this.punktNrGVPLinks = punktNrGVPLinks;
		this.punktNrGVPRechts = punktNrGVPRechts;
		this.stationGVPLinks = stationGVPLinks;
		this.stationGVPRechts = stationGVPRechts;
		this.querGVPLinks = querGVPLinks;
		this.querGleisLinks = querGleisLinks;
		this.querGleisRechts = querGleisRechts;
		this.hoehenmaßGVPLinks = hoehenmaßGVPLinks;
		this.hoehenmaßGVPRechts = hoehenmaßGVPRechts;
		this.gleisabstand = gleisabstand;

	}

	public String getpunktNrGVPLinks() {
		return punktNrGVPLinks;
	}

	public void setpunktNrGVPLinks(String punktNrGVPLinks) {
		this.punktNrGVPLinks = punktNrGVPLinks;
	}

	public double getstationGVPLinks() {
		return stationGVPLinks;
	}

	public void setstationGVPLinks(double stationGVPLinks) {
		this.stationGVPLinks = stationGVPLinks;
	}

	public String getpunktNrGVPRechts() {
		return punktNrGVPRechts;
	}

	public void setpunktNrGVPRechts(String punktNrGVPRechts) {
		this.punktNrGVPRechts = punktNrGVPRechts;
	}

	public double getstationGVPRechts() {
		return stationGVPRechts;
	}

	public void setstationGVPRechts(double stationGVPRechts) {
		this.stationGVPRechts = stationGVPRechts;
	}

	public double getquerGVPLinks() {
		return querGVPLinks;
	}

	public void setquerGVPLinks(double querGVPLinks) {
		this.querGVPLinks = querGVPLinks;
	}

	public double getquerGleisLinks() {
		return querGleisLinks;
	}

	public void setquerGleisLinks(double querGleisLinks) {
		this.querGleisLinks = querGleisLinks;
	}

	public double getquerGleisRechts() {
		return querGleisRechts;
	}

	public void setquerGleisRechts(double querGleisRechts) {
		this.querGleisRechts = querGleisRechts;
	}

	public int gethoehenmaßGVPLinks() {
		return hoehenmaßGVPLinks;
	}

	public void sethoehenmaßGVPLinks(int hoehenmaßGVPLinks) {
		this.hoehenmaßGVPLinks = hoehenmaßGVPLinks;
	}

	public int gethoehenmaßGVPRechts() {
		return hoehenmaßGVPRechts;
	}

	public void sethoehenmaßGVPRechts(int hoehenmaßGVPRechts) {
		this.hoehenmaßGVPRechts = hoehenmaßGVPRechts;
	}

	@Override
	public int compareTo(LageskizzenGVPDAO other) {
		double diff = this.stationGVPLinks - other.getstationGVPLinks();
		if (diff > 0) {
			return 1;
		} else if (diff < 0) {
			return -1;
		} else {
			return Double.compare(getstationGVPRechts(),
					other.getstationGVPRechts());
		}
	}

	public void setgleisabstand(double gleisabstand) {
		this.gleisabstand = gleisabstand;
	}

	public double getgleisabstand() {
		return gleisabstand;
	}

}
